import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import { join } from "path"
import dts from "vite-plugin-dts"

// https://vite.dev/config/
export default defineConfig({
  plugins: [vue(), dts({
    include: ['src/package/SwRichText'],
  })],
  resolve: {
    alias: {
      "@": join(__dirname, 'src'),
    }
  },
  build: {
    outDir: 'dist', //生产环境路径
    lib: {
      entry: join(__dirname, 'src/package/SwRichText/index.ts'),
      name: "swRichText",
      fileName: `sw-rich-text`
    },
    rollupOptions: {
      // 确保外部化处理那些你不想打包进库的依赖
      external: ['vue'],
      output: {
        // 在 UMD 构建模式下为这些外部化的依赖提供一个全局变量
        globals: {
          vue: 'Vue',
        },

      },
    },
  },
  server: {
    open: false, //自动打开
    // base: "./ ", //生产环境路径
    proxy: { // 本地开发环境通过代理实现跨域，生产环境使用 nginx 转发
      // 正则表达式写法
      '^/api': {
        target: 'http://192.168.2.218:8011', // 后端服务实际地址
        changeOrigin: true, //开启代理
        rewrite: (path) => path.replace(/^\/api/, '')
      }
    }
  },
})
